অ্যাপাচি পিওআই (Apache POI) ব্যবহার করে PowerPoint (PPTX) ফাইলের মধ্যে Table ফরম্যাটিং করা সম্ভব। টেবিলের মধ্যে আপনি বর্ডার, ব্যাকগ্রাউন্ড, এবং টেক্সট ফরম্যাটিং করতে পারবেন। এভাবে টেবিলের চেহারা এবং কনটেন্ট কাস্টমাইজ করা যায়, যাতে প্রেজেন্টেশনটি আরও আকর্ষণীয় এবং পেশাদার হয়।
এখানে Table Formatting এর জন্য Border, Background এবং Text Formatting এর উদাহরণ দেওয়া হলো।
PowerPoint ফাইলে টেবিল তৈরি করতে এবং ফরম্যাটিং করতে XSLFTable
ব্যবহার করা হয়। এই টেবিলের মধ্যে আপনি সারি (rows) এবং কলাম (columns) যোগ করতে পারেন এবং প্রতিটি সেলে টেক্সট, ব্যাকগ্রাউন্ড এবং বর্ডার ফরম্যাট করতে পারেন।
import org.apache.poi.xslf.usermodel.*;
import org.apache.poi.sl.usermodel.*;
import java.awt.*;
import java.io.*;
public class TableFormattingExample {
public static void main(String[] args) throws IOException {
// একটি নতুন PowerPoint তৈরি করা
XMLSlideShow ppt = new XMLSlideShow();
// স্লাইড তৈরি করা
XSLFSlide slide = ppt.createSlide();
// টেবিল তৈরি করা (2 সারি এবং 3 কলাম)
XSLFTable table = slide.createTable();
table.setAnchor(new java.awt.Rectangle(50, 50, 500, 200)); // টেবিলের অবস্থান
// প্রথম সারি তৈরি করা
XSLFTableRow row1 = table.addRow();
XSLFTableCell cell1 = row1.addCell();
cell1.setText("Header 1");
XSLFTableCell cell2 = row1.addCell();
cell2.setText("Header 2");
XSLFTableCell cell3 = row1.addCell();
cell3.setText("Header 3");
// দ্বিতীয় সারি তৈরি করা
XSLFTableRow row2 = table.addRow();
XSLFTableCell cell4 = row2.addCell();
cell4.setText("Row 1, Col 1");
XSLFTableCell cell5 = row2.addCell();
cell5.setText("Row 1, Col 2");
XSLFTableCell cell6 = row2.addCell();
cell6.setText("Row 1, Col 3");
// টেবিলের ফরম্যাটিং (বর্ডার, ব্যাকগ্রাউন্ড, টেক্সট)
formatTable(table);
// PowerPoint ফাইল সংরক্ষণ করা
try (FileOutputStream out = new FileOutputStream("table_formatted.pptx")) {
ppt.write(out);
}
System.out.println("PowerPoint ফাইল সফলভাবে তৈরি হয়েছে!");
}
// টেবিলের ফরম্যাটিং (বর্ডার, ব্যাকগ্রাউন্ড, টেক্সট)
private static void formatTable(XSLFTable table) {
// প্রতিটি সেলের জন্য ফরম্যাটিং করা
for (XSLFTableRow row : table) {
for (XSLFTableCell cell : row) {
// সেলের টেক্সট ফরম্যাটিং
XSLFTextParagraph paragraph = cell.getTextParagraphs().get(0);
XSLFTextRun run = paragraph.getTextRuns().get(0);
run.setFontSize(14.0);
run.setFontFamily("Arial");
run.setBold(true);
// সেলের ব্যাকগ্রাউন্ড ফরম্যাটিং
cell.setFillColor(new Color(210, 210, 255)); // হালকা নীল ব্যাকগ্রাউন্ড
// সেলের বর্ডার ফরম্যাটিং
cell.setBorderColor(BorderEdge.BOTTOM, new Color(0, 0, 0)); // কালো বর্ডার
cell.setBorderWidth(BorderEdge.BOTTOM, 1.0); // বর্ডারের প্রস্থ
// বাকি বর্ডারগুলির ফরম্যাটিং
cell.setBorderColor(BorderEdge.TOP, new Color(0, 0, 0));
cell.setBorderWidth(BorderEdge.TOP, 1.0);
cell.setBorderColor(BorderEdge.LEFT, new Color(0, 0, 0));
cell.setBorderWidth(BorderEdge.LEFT, 1.0);
cell.setBorderColor(BorderEdge.RIGHT, new Color(0, 0, 0));
cell.setBorderWidth(BorderEdge.RIGHT, 1.0);
}
}
}
}
slide.createTable();
দিয়ে একটি নতুন টেবিল তৈরি করা হয়েছে।table.setAnchor(new java.awt.Rectangle(50, 50, 500, 200));
দিয়ে টেবিলের অবস্থান এবং আকার সেট করা হয়েছে।table.addRow();
এবং কলাম তৈরি করতে row.addCell();
ব্যবহার করা হয়েছে।cell.setText("Header 1");
দিয়ে প্রতিটি সেলে টেক্সট যোগ করা হয়েছে।XSLFTextRun
ব্যবহার করে টেক্সটের ফন্ট সাইজ, ফন্ট ফ্যামিলি এবং বোল্ড করা হয়েছে।cell.setFillColor(new Color(210, 210, 255));
দিয়ে সেলের ব্যাকগ্রাউন্ড রঙ হালকা নীল করা হয়েছে।cell.setBorderColor()
এবং cell.setBorderWidth()
দিয়ে সেলের চারপাশে কালো বর্ডার এবং প্রস্থ সেট করা হয়েছে।new Color(210, 210, 255)
হালকা নীল রঙ।Apache POI ব্যবহার করে PowerPoint ফাইলে টেবিল তৈরি এবং ফরম্যাটিং করা অনেক সহজ। টেবিলের সেলগুলোতে বর্ডার, ব্যাকগ্রাউন্ড রঙ এবং টেক্সট ফরম্যাটিং কাস্টমাইজ করতে পারবেন। এই প্রক্রিয়া আপনাকে পেশাদার প্রেজেন্টেশন তৈরি করতে সাহায্য করে। XSLFTable
, XSLFTableRow
, এবং XSLFTableCell
ক্লাসের মাধ্যমে আপনি সহজেই টেবিলের সেলগুলোকে সাজাতে এবং ফরম্যাট করতে পারবেন।
common.read_more